<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  <title>SIMILE | Gadget</title>
  <link rel="stylesheet" href="http://simile.mit.edu/styles/default.css"
 type="text/css">
  <style>
     #body {
        margin-bottom: 220px;
     }
    </style>
   <link rel="alternate" type="application/rdf+xml" href="doap.rdf" />
</head>
<body>
<!--#include virtual="sidebar.html" -->
<ul id="path">
  <li><a href="http://simile.mit.edu/" title="Home">SIMILE</a></li>
  <li><span>Gadget</span></li>
</ul>
<div id="body">
<h1>Gadget</h1>
<h2>What is this?</h2>
<p>Gadget is a command line XML inspector. <small>[sound of inspector
gadget theme playing in the back]</small> </p>
<h2>What can I do with this?</h2>
<p>You can understand how the internal structure of tons of XML "looks
like".</p>
<p>This is normally useful in situations like:</p>
<ul>
  <li>data migration/transformation</li>
  <li>data cleanup</li>
  <li>data complexity evaluation</li>
  <li>schema adherence understanding</li>
</ul>
<h2>Why was it built?</h2>
<p>Well, because I was given the task of transforming a few hundreds of
XML into RDF and I found out (the hard way!) that with that amount of
data things start to break down: you need radically different
approaches since you can't simply open your XML document in your
browser and read it.</p>
<p>The first version of the program was a collection of 12-stages-long
grep+sed+sort+uniq pipelines but that was not flexible enough for my
needs.</p>
<h2>Requirements</h2>
<p>Gadget is a command line application written in Java and requires:</p>
<ul>
  <li>A <a href="http://www.java.com/">Java 1.4</a> or later
compatible virtual machine for your operating system.</li>
  <li>the JAVA_HOME environment variable must be set to the
installation directory of the java virtual machine in your system.</li>
</ul>
<h2>Oh man, why Java?</h2>
<p>All right, listen: I know some of you could rewrite this in, say,
OCML, Ruby or Scheme in about 4 lines of code, but I can't. Ah, if
anybody other there wants to port the approach to C I'd very much
appreciate, but I don't want to waste my time, I'd much rather have CPU
waster theirs. And besides, I grew allergic to pointers.</p>
<h2>Ok, ok, I'm interested, now what?</h2>
<p>Follow me to the <a href="guide.html">user guide</a> where we'll
see what we can do with this.</p>
<h2>Where do I download it?</h2>
<p>You can obtain Gadget in two different ways:<br>
</p>
<ol>
  <li>download a <a href="http://simile.mit.edu/dist/gadget/">prepackaged
distribution</a><br>
  </li>
  <li>download the files directly from the code repository.</li>
</ol>
<p>In case you want to download the files from the repository (for
example, if you want to have the latest and greatest development
snapshot), you need to have a <a href="http://subversion.tigris.org/">Subversion</a>
client installed. At this point, just type</p>
<pre>svn co http://simile.mit.edu/repository/gadget/trunk/ gadget<br></pre>
<p>at the command line and the latest gadget distribution will appear
in the "gadget" directory.<br>
</p>
<h2>Licensing and legal issues</h2>
<p> Gadget is open source software and is licensed under the BSD
license located in the LICENSE.txt file located in the root of the
distribution.</p>
<p> Note however, that this software ships with libraries that are not
released under the same license, that we are redistributing them
untouched and each of them are licensed according to the terms of the
license files located in the ./legal subdirectory of the distribution.</p>
<h2>Credits</h2>
<p>This software was created by the SIMILE project and originally
written by: </p>
<ul>
  <li><a href="http://www.betaversion.org/%7Estefano/">Stefano Mazzocchi</a>
&lt;stefanom at mit.edu&gt;</li>
</ul>
</div>
<!--#include virtual="../footer.html" -->
</body>
</html>
